Present invention relates to an image processing apparatus for changing the size of the inputted image data in order to convert resolution of the image data from low resolution data to high resolution data.
Conventionally, various methods have been suggested for resolution conversion in order to convert inputted low resolution data to high resolution data. These methods adopt various conversion methods depending upon a type of a subject image (e.g. a multi-level image having tone data for each pixel, a binary image binarized in accordance with a pseudo half-tone processing, a binary image binarized with a fixed threshold value, an image including characters, and the like).
As a conventional interpolation method, for instance, there is the nearest neighbor interpolation method where a pixel value of the nearest neighboring pixel C is utilized as a value of an interpolating point E as shown in FIG. 26, or a bi-linear interpolation method where a pixel value E is determined by the following equation utilizing distances from four pixels (pixel values of four pixels are A, B, C and D) surrounding an interpolation point: EQU E=(1-i)(1-j)A+i.multidot.(1-j)B+j.multidot.(1-i)C+ijD
Note it is assumed that when the distance between pixels is 1, the interpolating pixel is positioned at i from A in a horizontal direction and j from A in a vertical direction.
In a case where image data having low resolution and multiple tones is converted to binary image data having high resolution, for instance, if an image output apparatus, such as a printer capable of outputting only binary values, is to output image data having a resolution corresponding to a printer resolution, data related to the printer resolution may be inputted from a host computer in advance. However, considering mapping process on the host computer, burden of the processing, or time required for transmission, it is also possible to input the data having low resolution so as to generate binary data having high resolution and then output the data. Currently, an error diffusion method is often employed in the pseudo half-tone processing for binarizing a multi-level image. Yet, as resolution of the printer becomes higher, it is more advantageous in terms of processing time, a size of circuit components, and the like to use a dither method rather than the error diffusion method which requires a heavy load of processing. Moreover, in terms of image quality, particularly tonality, a difference of these methods becomes small as high resolution processing is commonly used. Herein, the problem is the resolution. When the dither method is utilized, tonality and resolution are conflicting conditions so that deterioration in a half-tone character portion or an edge portion of a natural image becomes conspicuous. Conventionally, in view of this problem, a method is suggested where binarization is performed by the dither method after an edge emphasizing process is performed.
However, the foregoing conventional method raises the following problem.
The method illustrated in FIG. 26 has an advantage that it is simple in structure. However, if this method is applied to a natural image, a pixel value is determined for each block which is enlarged for interpolation; therefore, the block is visually emphasized, resulting in deterioration of image quality.
Furthermore, when the method is applied to an image including characters, a line image, CG (computer graphics) image or the like, the same pixel values are repeated in each of the enlarged blocks; therefore, resulting in a poor image having a rough edge called a jaggy image, particularly in an oblique line which will be described later with reference to FIGS. 28 and 29. FIG. 28 shows input data, and FIG. 29 shows an example of an image shown in FIG. 28, on which a resolution conversion is performed to obtain an image which is enlarged twice the size of the original one utilizing the nearest neighbor interpolation. The larger magnifying ratio becomes, the more an image deteriorates. Note that numerals 200 and 10 in FIGS. 28 and 29 are pixel values.
The method shown in FIG. 27 is a generally-utilized method for enlarging a natural image. According to this method, the image obtained will be balanced and smoothed; however, in the edge portion or in a portion where sharp quality is particularly required, blurred image quality is obtained. When this method is applied to an image obtained by scanning a map or the like, or a natural image including characters, important information contained in the image may not be conveyed to a user due to the blur caused by the interpolation.
FIG. 30 shows image data on which an interpolation process is performed according to the method shown in FIG. 27 to obtain an enlarged image twice as large as the image data shown in FIG. 28. According to the method, as apparent from process result shown in FIG. 30, pixel values are not uniform not only in the vicinity of an oblique line but also the oblique line itself, thereby resulting in a blurred image.
Further, when both resolution conversion and pseudo half-tone processing are performed, the following problem arises.
When the dither processing is performed on an image on which the resolution conversion shown in FIGS. 26 and 27 has been performed by executing edge emphasizing processing with filtering, the method shown in FIG. 26 makes the jaggedness more apparent. Even by the method shown in FIG. 27, since an edge portion is already blurred, more specifically, pixels in the edge portion are broken due to interpolation processing, the edge emphasizing process does not reproduce an edge which has been sharp enough when resolution of the image is low. Moreover, since filtering is executed after the number of pixels is increased by the resolution conversion, a load for processing increases.
In other words, resolution conversion of a multi-level image raises a problem that favorable resolution conversion, where there is no blur caused by interpolation processing or no jaggedness, cannot be achieved. Furthermore in the processing in which resolution conversion and pseudo half-tone processing are combined, there is a problem that a process pursuing both tonality and resolution cannot be realized.
In Japanese Patent Application Laid-Open, 7-93531, 7-107268 and 7-105359, resolution conversion methods which do not result in jaggedness in an image or a blurred image due to interpolation are suggested, in association with generation of high resolution data based on low resolution data.
The basic idea of the suggested technique is as follows. Components depending upon resolution are removed from inputted original data, then the number of pixels is increased to the number corresponding to a resolution of an image to be outputted, and finally, data appropriate for the newly defined resolution is predicted and generated. The removal of the dependency of inputted resolution can be realized by smoothing processing utilizing an LPF (low pass filter), and an increase in the number of pixels can be realized by linear interpolation. For predicting high resolution data, the interpolated data is simply binarized, and different processing is performed respectively on the pixels binarized as "1" and the pixels binarized as "0", to calculate pixel values to be outputted.
There is also a method of directly calculating output pixel values in a block consisting of pixels to be enlarged in accordance with a predetermined rule, without utilizing the aforementioned interpolation methods.
However, the above suggestions have the following problems. According to the foregoing suggested process, edge generation in high resolution is performed based on binarized data. For paying attention to importance of resolution in high resolution state, it is necessary to generate an edge which has resolution equivalent to a high resolution and calculate a pixel value based on the generated resolution data. However, when the subject image is a natural image or the like, continuity of pixel values is disturbed because of separated processing of edge generations, thereby producing an unnatural image.